import { notification } from 'ant-design-vue';
import { h } from 'vue';
import TextToHtml from '@/components/text-to-html/index.vue';
import i18n from '@/i18n';

/**
 * 成功消息
 * @param message 
 * 成功消息文本
 */
function success(message: string) {
    notification.success({
        message: i18n.global.t('success').toString(),
        description: () => h(TextToHtml, { text: message }),
        placement: 'bottomRight'
    });
}

/**
 * 警告消息
 * @param message 
 * 警告消息文本
 */
function warning(message: string) {
    notification.warning({
        message: i18n.global.t('warning').toString(),
        description: () => h(TextToHtml, { text: message }),
        placement: 'bottomRight'
    });
}

/**
 * 基本消息
 * @param message 
 * 基本消息文本
 */
function info(message: string) {
    notification.info({
        message: i18n.global.t('info').toString(),
        description: () => h(TextToHtml, { text: message }),
        placement: 'bottomRight'
    });
}

/**
 * 错误消息
 * @param message 
 * 错误消息文本
 */
function error(message: string) {
    notification.error({
        message: i18n.global.t('error').toString(),
        description: () => h(TextToHtml, { text: message }),
        placement: 'bottomRight'
    });
}

export default {
    success,
    info,
    error,
    warning
};